Code:
#include <stdio.h>
#include <winsock.h>
#include <stdlib.h>
#pragma comment(lib, "wsock32.lib")
int main() {
WSADATA wsadata;
int error;
error = WSAStartup(MAKEWORD(1,1),&wsadata);
if(error == SOCKET_ERROR) {
printf("Error starting winsock\n",WSAGetLastError());
return -1;
}
int Socket;
if((Socket = socket(AF_INET, SOCK_STREAM, 0))<0) {
printf("Error opening socket\n",WSAGetLastError());
return -1;
}
sockaddr_in addr;
addr.sin_family = AF_INET;
addr.sin_port = htons(1234);
addr.sin_addr.s_addr = INADDR_ANY;
if((bind(Socket,(sockaddr*)&addr, sizeof(addr)))<0) {
printf("Bind error\n",WSAGetLastError());
return -1;
}
if((listen(Socket,1))<0) {
printf("Error listening\n",WSAGetLastError());
return -1;
}
else
printf("Listening\n");
getch();
closesocket(Socket);
WSACleanup();
return 0;
}
And the errors:
Compiler: Default compiler
Building Makefile: "C:\Documents and Settings\Administrator\Desktop\Code\server\Makefil e.win"
Executing make...
make.exe -f "C:\Documents and Settings\Administrator\Desktop\Code\server\Makefil e.win" all
gcc.exe -c server1.c -o server1.o -I"C:/Dev-Cpp/include"
server1.c: In function `main':
server1.c:25: error: `sockaddr_in' undeclared (first use in this function)
server1.c:25: error: (Each undeclared identifier is reported only once
server1.c:25: error: for each function it appears in.)
server1.c:25: error: parse error before "addr"
server1.c:26: error: `addr' undeclared (first use in this function)
server1.c:30: error: `sockaddr' undeclared (first use in this function)
server1.c:30: error: parse error before ')' token
make.exe: *** [server1.o] Error 1
Execution terminated